バージョン

MeetsCriteria(FilterCondition[],FilterLogicalOperator) メソッド

渡されたフィルター条件および論理演算子によって指定される基準を行が満たす場合、True を返します。論理演算子が And で、かつ行が filterConditions 配列内のすべての条件を満たす場合、このメソッドは True を返します。論理演算子が Or で、かつ行が少なくともひとつの条件を満たす場合、このメソッドは True を返します。そうでない場合には、False を返します。
シンタックス
'宣言
 
Public Overloads Function MeetsCriteria( _
   ByVal filterConditions() As FilterCondition, _
   ByVal logicalOperator As FilterLogicalOperator _
) As Boolean

パラメータ

filterConditions
フィルター条件。
logicalOperator
フィルター条件の配列に含まれるフィルター条件を組み合わせる論理演算子。

戻り値の型

行が FilterCondition の基準を満たす場合は True。そうでない場合は False。
解説

渡されたフィルター条件および論理演算子によって指定される基準を行が満たす場合、True を返します。論理演算子が And で、かつ行が filterConditions 配列内のすべての条件を満たす場合、このメソッドは True を返します。論理演算子が Or で、かつ行が少なくともひとつの条件を満たす場合、このメソッドは True を返します。そうでない場合には、False を返します。

使用例
Imports Infragistics.Shared
Imports Infragistics.Win
Imports Infragistics.Win.UltraWinGrid


    Private Sub UltraGrid1_InitializeLayout(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles UltraGrid1.InitializeLayout
        ' Call RefreshFilters to cause the UltraGrid to reevaluate any filters and fire
        ' FilterRow event on every row.
        '
        e.Layout.RefreshFilters()
    End Sub

    Private Sub UltraGrid1_FilterRow(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.FilterRowEventArgs) Handles UltraGrid1.FilterRow
        Dim band As UltraGridBand = e.Row.Band
        If "Customers" = band.Key Then
            Dim fc1 As FilterCondition = New FilterCondition(band.Columns("CustomerID"), FilterComparisionOperator.Like, "A*")
            Dim fc2 As FilterCondition = New FilterCondition(band.Columns("CustomerID"), FilterComparisionOperator.Like, "B*")

            ' Call MeetsCriteria off the row with the filter logical operator of Or to test if the row
            ' passes any of the filters specified in the filter conditions array.
            '
            Dim rowPasses As Boolean = e.Row.MeetsCriteria(New FilterCondition() {fc1, fc2}, FilterLogicalOperator.Or)

            ' If the row does not pass the filter then filter it out otherwise reset its RowFilteredOut
            ' status.
            '
            If Not rowPasses Then
                e.RowFilteredOut = True

            Else
                e.RowFilteredOut = False
            End If
        End If
    End Sub
using Infragistics.Shared;
using Infragistics.Win;
using Infragistics.Win.UltraWinGrid;
using System.Diagnostics;


		private void ultraGrid1_InitializeLayout(object sender, Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs e)
		{
			// Call RefreshFilters to cause the UltraGrid to reevaluate any filters and fire
			// FilterRow event on every row.
			//
			e.Layout.RefreshFilters( );
		}

		private void ultraGrid1_FilterRow(object sender, Infragistics.Win.UltraWinGrid.FilterRowEventArgs e)
		{
			UltraGridBand band = e.Row.Band;
			if ( "Customers" == band.Key )
			{
				FilterCondition fc1 = new FilterCondition( band.Columns[ "CustomerID" ], FilterComparisionOperator.Like, "A*" );
				FilterCondition fc2 = new FilterCondition( band.Columns[ "CustomerID" ], FilterComparisionOperator.Like, "B*" );

				// Call MeetsCriteria off the row with the filter logical operator of Or to test if the row
				// passes any of the filters specified in the filter conditions array.
				//
				bool rowPasses = e.Row.MeetsCriteria( new FilterCondition[] { fc1, fc2 }, FilterLogicalOperator.Or );

				// If the row does not pass the filter then filter it out otherwise reset its RowFilteredOut
				// status.
				//
				if ( ! rowPasses )
					e.RowFilteredOut = true;
				else
					e.RowFilteredOut = false;
			}
		}
参照